| 11,40 | 
 
   b, F:Top, n, m:
b, F:Top, n, m: . primrec(n+m;b;
. primrec(n+m;b; i.F) ~ primrec(n;primrec(m;b;
i.F) ~ primrec(n;primrec(m;b; i.F);
i.F); i.F)
i.F) 
 by (InductionOnNat)
 by (InductionOnNat) 
 CollapseTHEN ((Reduce 0)
CollapseTHEN ((Reduce 0) 
 CollapseTHEN (((D (0)
CollapseTHEN (((D (0) )
) 
 CollapseTHENA (Auto
CollapseTHENA (Auto )
) )
)
 CollapseTHEN (((Try ((Complete ((ProveSqEq)
CollapseTHEN (((Try ((Complete ((ProveSqEq) 
 CollapseTHEN (Auto
CollapseTHEN (Auto )
) ))
)) ))
)) )
) 
 CollapseTHEN ((
CollapseTHEN ((
 CRW (SubC (RecUnfoldTopC `primrec`)) 0)
CRW (SubC (RecUnfoldTopC `primrec`)) 0) 
 CollapseTHEN (((if (((first_nat 2:n)) = 0) then (Repeat (
CollapseTHEN (((if (((first_nat 2:n)) = 0) then (Repeat (
 C(((if (0) =0 then SplitOnConclITE else SplitOnHypITE (0))
C(((if (0) =0 then SplitOnConclITE else SplitOnHypITE (0)) )
) 
 CollapseTHENA (Auto
CollapseTHENA (Auto )
) )
) 
 CoCollapseTHEN ((Try ((Complete (Auto'))
CoCollapseTHEN ((Try ((Complete (Auto')) ))
)) )
) )) else (RepeatFor (first_nat 2:n) ((((if (0
)) else (RepeatFor (first_nat 2:n) ((((if (0
 C) =0 then SplitOnConclITE else SplitOnHypITE (0))
C) =0 then SplitOnConclITE else SplitOnHypITE (0)) )
) 
 CollapseTHENA (Auto
CollapseTHENA (Auto )
) )
) 
 CollapseTHEN (
CollapseTHEN (
 C(Try ((Complete (Auto'))
C(Try ((Complete (Auto')) ))
)) )
) )))
))) )
) 
 CollapseTHEN ((EqCD)
CollapseTHEN ((EqCD) 
 CollapseTHEN ((Reduce 0)
CollapseTHEN ((Reduce 0) 
 CoCollapseTHEN (((Try (Trivial))
CoCollapseTHEN (((Try (Trivial)) )
) 
 CollapseTHEN ((Subst' ((n+m) - 1) ~ ((n - 1)+m) ( 0)
CollapseTHEN ((Subst' ((n+m) - 1) ~ ((n - 1)+m) ( 0) )
) 
 CoCollapseTHEN (((Try ((if ((0) = 0) then BackThruSomeHyp else BHyp (0) )
CoCollapseTHEN (((Try ((if ((0) = 0) then BackThruSomeHyp else BHyp (0) ) ))
)) )
) 
 CollapseTHEN (Auto
CollapseTHEN (Auto
 C
C )
) )
) )
) )
) )
) )
) )
) )
) )
) )
) )
) 
 
 C.
C.
| Definitions |  j    Q  B(x)   B(x)  j)    b  b    B  A   Q   x:A. B(x)  T | 
| Lemmas |